1. Field of the Invention
This invention relates to a method for preventing multiple stages of compression and decompression in a voice communication system, in particular, in a communication link traversing multiple networks.
2. Description of Related Art
In modern voice communication systems, a voice communication link may include one or more wide area networks (xe2x80x9cWANxe2x80x9d). The inclusion of a WAN in a voice communication link normally requires equipment to convert a voice signal transmitted on the link to a format acceptable for transmission over the WAN. When a voice communication link includes a plurality of WAN, the quality of a voice signal transmitted thereon may be reduced by multiple conversions of the voice signal to a format for transmission over the WAN as explained with reference to FIG. 1. FIG. 1 (Prior Art) is an example of a voice communication system 10 having a voice communication link that includes a plurality of WAN 11,21.
As shown in FIG. 1, the voice communication system 10 includes call signal equipment 12, 22, two WAN 11, 21, a digital switch 30 and a plurality of Voice Conversion Units (VCU) 14, 24, 34, 44. The call signal equipment 12, 22 may be any equipment that may transmit and receive a voice signal, e.g., a facsimile machine, telephone, modem, or another digital switch or private switching network. The WAN 11, 21 is any network that transmits data packets using any protocol including time division multiplex (TDM), frame relay (FR), or internet protocol (IP). The digital switch 30 is a switch that routes voice signals to one or more locations.
The VCU 14, 24, 34, and 44 converts voice signals received on a subscriber side link 16, 26, 36, and 46 to packet signals that may be transmitted over a WAN on a network side link 18, 28, 38, and 48. The VCU 14, 24, 34, and 44 also converts packet signals received on the network side link 18, 28, 38, and 48 to voice signals that may be transmitted to subscriber equipment on the subscriber side link 16, 26, 36, and 46. Prior to conversion to a packet signal, a voice signal may be a pulse code modulation (xe2x80x9cPCMxe2x80x9d) or other common voice format signal. The PCM voice signal is converted to a plurality of packets to enable the voice signal to traverse the WAN 11, 21. It is noted in order to optimize network bandwidth utilization, the PCM voice signal received on the subscriber side 16, 26, 36, and 46 is compressed prior to conversion to packets for transmission across a WAN 11, 12. Packets signals received on the network side 18, 28, 38, and 48 are decompressed by VCU 14, 24, 34, and 44.
In the voice communication system 10 shown in FIG. 1, the voice communication link between call signal equipment 12 and call signal equipment 22 includes four VCUs 14, 24, 34, and 44, two WAN 11, 21 and a digital switch 30. Thus, a voice signal transmitted from either equipment 12, 22 to the other 22, 12 will be: 1) compressed and converted from a voice signal to a packet signal by VCU 14 or 44; 2) transmitted over a first WAN 11 or 21; converted and decompressed back into a voice signal by VCU 24 or 34; 3) transmitted or switched from one VCU 24 or 34 to another VCU 34 or 24 by digital switch 30; 4) compressed and converted from a voice signal to a packet signal by VCU 34 or 24; 5) transmitted over a second WAN 21 or 11; and 6) converted and decompressed back into a voice signal by VCU 44 or 14 and transmitted to equipment 22 or 12. Consequently, a voice signal transmitted between equipment 11 and 21 will be compressed and decompressed twice, thus, VCU 24, switch 30 and VCU 34 form a xe2x80x9ctandem linkxe2x80x9d, which may reduce the voice quality of the voice signal.
Ideally, when a voice signal is compressed and decompressed more than once (a tandem link occurs) in a voice communication link, the extra stages of compression and decompression should be eliminated, i.e., the tandem link should detected and bypassed. However, in order to prevent multiple compressions and decompressions in a voice communication link, the voice communication system 10 must be able to detect when a tandem link (multiple compressions and decompressions) exists in a particular voice communication link. For example, the voice communication system 20 shown in FIG. 2, includes a plurality of WAN 11, 21, but a voice communication link between call signal equipment 12 and 32 or 22 and 32 traverses only a single WAN 11 or 21 and does not include a tandem link.
Thus, a voice signal transmitted from either equipment 12 to 32 or 22 to 32 will be: 1) compressed and converted from a voice signal to a packet signal by VCU 14 or 44; 2) transmitted over a first WAN 11 or 21; converted and decompressed back into a voice signal by VCU 24 or 34; and 3) transmitted or switched from one VCU 24 or 34 to call signal equipment 32 via link 31. Thus, the voice communication link between equipment 12 or 22 and 32 includes only one stage of compression and decompression. Thus, although voice communication system 20 includes two WAN 11, 21, not every voice communication link includes multiple compressions and decompressions. Accordingly, a need exists for a method that detects when a tandem link or multiple compressions and decompressions occur in a voice communication link and prevents the same to improve the voice quality of a voice signal on such a link.
The present invention includes a method of determining whether a voice communication link between a first subscriber unit and a second subscriber unit in a voice communication system includes a tandem link. The first and second subscriber units transmit and receive a voice signal on the voice communication link. In addition, the voice communication system includes a plurality of voice conversion units where each of the plurality of voice conversion units has a subscriber side link and network link. Each of the plurality of voice conversion units adds a HAIL signal to the voice signal provided on the subscriber side link. They also detect a HAIL signal or an ACK signal in the voice signal received on the subscriber side link. Further, they add an ACK signal to the voice signal provided on the subscriber side link when a HAIL signal or an ACK signal is detected on the voice signal received on the subscriber side link. A tandem link is detected when the ACK signal is detected in the voice signal received on the subscriber side link.
Each of the plurality of voice conversion units may also attempt to detect the ACK signal in the voice signal received on the subscriber side link after generating a voice signal with the ACK signal. In this case, a tandem link is detected when an ACK signal is detected in the voice signal received on the subscriber side link after generating a voice signal with the ACK signal. In a preferred embodiment, the tandem link may be detected when an ACK signal is detected in the voice signal received on the subscriber side link within a predetermined period of time after generating a voice signal with the ACK signal.
In another preferred embodiment, each of the plurality of voice conversion units may attempt to determine if a notch code exists in the received voice signal and avoiding tandem link detection when the notch is detected. The method each unit employs in this case includes attempting to detect whether the voice signal generated to the subscriber side link includes a notch code. Then, removing the notch code from voice signal generated to the subscriber side link when the notch code is detected in the voice signal generated to the subscriber side link and providing the modified voice signal on the subscriber side link. This ensures that each unit generates voice signals to the subscriber without the notch code so other units receiving voice signal without the notch code will know that the sending unit is not performing the same process. Accordingly, each unit also attempts to detect whether the voice signal received on the subscriber side link includes a notch code. In this case, a tandem link is Not detected when a notch code is detected in the voice signal received on the subscriber side link.
In a preferred embodiment, the step of generating a signal with the HAIL signal includes adding a first predetermined DC offset to the voice signal provided on the subscriber side link. Further, the step of generating a signal with the ACK signal includes adding a second predetermined DC offset to the voice signal provided on the subscriber side link. Ideally, the first predetermined DC offset is a positive DC offset and the second predetermined DC offset is a negative DC offset. In this case, the step of detecting a HAIL signal may include averaging the voice signal received on the subscriber side link for a predetermined interval of time. Then, comparing the averaged value of the voice signal received on the subscriber side link with the first predetermined DC offset. Accordingly, detecting a HAIL signal in the voice signal received on the subscriber side link when the averaged value of the voice signal received on the subscriber side link is substantially the same as the first predetermined DC offset.
Also, the step of detecting an ACK signal may include averaging the voice signal received on the subscriber side link for a predetermined interval of time. Then, comparing the averaged value of the voice signal received on the subscriber side link with the second predetermined DC offset. Accordingly, detecting an ACK signal in the voice signal received on the subscriber side link when the averaged value of the voice signal received on the subscriber side link is substantially the same as the second predetermined DC offset. It is noted that ideally the Notch code is the PCM code that most closely corresponds to the first predetermined DC offset.